Introduction

This document covers 3D printing concepts and principles, specifically using the Bambu Lab H2S. 3D printers like the H2S print layers on top of each other to form 3D objects. These layers are printed using different types of plastics, where the plastic is first melted and then extruded out of a nozzle.

Hardware

The H2S is enclosed on all sides in the shape of a rectangular prism. The inside of the prism is referred to as the chamber, which is climate controlled and contains all the machinery for 3D printing. [src]

H2S front diagram

The subsections below detail the machinery within the chamber.

Toolhead

The machinery responsible for laying down material is the toolhead. [src] The toolhead is an assembly consisting of ...

Filament enters the nozzle through the PTFE connector located at the top, where the extruder motor grabs it and pushes it into the hotend located at the bottom. The hotend's nozzle poking out of the toolhead enclosure is sandwiched between cooling ducts, where the part cooling fan directs air to rapidly cool filament as it's printed.

toolhead front diagram [src]

🔍SEE ALSO🔍

Heatbed

↩PREREQUISITES↩

As the name suggests, the heatbed is a heat controlled surface within the H2S. It magnetically secures a build plate, which is a swappable part that serves as the print surface (build plate types have different properties / target different filament materials). Depending on the material being printed, the heatbed's controlled heating may be required or otherwise beneficial for print quality (e.g., adhesion and / or reducing printing artifacts).

H2S heatbed placement [src]

Movement

↩PREREQUISITES↩

The toolhead moves on the XY plane using the CoreXY system, H2S's system for moving the toolhead front-back and left-right. The system is comprised of a pair of synchronized motors at the rear face of the chamber responsible for moving the toolhead on the X and Y axes: A motor and B motor. The motors are located at the rear inside face of the H2S, near the top. The B motor is on the left and the A motor is on the right.

The motors connect through the X-axis linear rail and the Y-axis linear rods via a pair of belts. The ...

Both motors work in tandem to coordinate movement in both directions (e.g., one motor isn't solely responsible on an axis).

The toolhead doesn't move on the Z-axis. Instead, depth is controlled by moving the heatbed down as layers are printed out from bottom-to-top. The Z-axis threaded and linear rods are responsible for moving the heatbed.

H2S movement [src]

Nozzle Cleaning

↩PREREQUISITES↩

The H2S has 2 mechanisms to clean the nozzle. The first mechanism is the purge wiper, a block at the back left of the H2S responsible for cleaning the toolhead between prints / filament changes. The purge wiper consists of ...

The toolhead knocks into the waffle / strips to clean off old stuck filament, sending it down the purge chute.

purge wiper placement purge wiper top view [src] [src]

The second mechanism is the nozzle wiper sheet, a sheet on the edge of the heatbed that the nozzle moves across to keep the tip smooth and free of debris. [src]

Climate Control

↩PREREQUISITES↩

In addition to the heatbed and the hotend, there are several additional climate control mechanisms within the H2S. These all work in tandem to appropriately heat and cool filament material:

H2S climate control H2S auxiliary part cooling fan

Status Light

↩PREREQUISITES↩

Just below the heatbed, facing forward and running side-to-side, is a light bar. The light bar, referred to as the status light, changes color to show the operating status of the H2S:

Automatic Material System 2 Pro

Automatic Material System 2 Pro is an extension to the H2S that manages multiple filaments. The AMS 2 Pro ...

The AMS 2 Pro supports 4 spools per unit, and supports chaining up to 4 AMS 2 Pro units together to support up to 16 spools per print. Additionally, the 4 chained AMS 2 Pro units may be chained up even further by 8 AMS HT units, enabling up to 24 spools per print.

AMS 2 Pro top diagram [src] [src]

Filament Inlet

↩PREREQUISITES↩

The H2S's chamber has 2 inlets to feed filament to the toolhead, one specifically for TPU and one specifically for non-TPU. The non-TPU inlet passes filament through a filament buffer, a tension-control / slack-management device at the rear face of the H2S. The filament buffer slides forward and backward, storing a small buffer of filament as it slides forward.

When the non-TPU inlet is hooked up to ...

The TPU inlet bypasses the filament buffer. The inlet in positioned just to the right of the filament buffer, feeding the PTFE directly from the exterior into the chamber. The PTFE tube used for the TPU inlet may either be the same PTFE tube attaching the filament buffer to the toolhead (disconnecting it and reconnecting it to the TPU inlet) or a separate PTFE tube.

filament buffer and TPU inlet placement [src]

⚠️NOTE️️️⚠️

In some cases, you may be able to use TPU with the non-TPU inlet. If you're using an AMS 2 Pro and your TPU is specifically branded as TPU for AMS, you can use it. [src]

Operation

↩PREREQUISITES↩

The subsections below detail high-level operational guidelines of the H2S.

Operational Placement

The H2S must be placed on a flat and stable surface. The operating space recommended is 80cm width x 102cm depth x 105cm height, which covers the space required in the back for the exhaust and an AMS 2 Pro to sit on top. [src]

Operational Climate

The H2S is recommended to be operated in temperatures between 15-30C (60-85F). If the temperature is ...

The chamber has an assortment of fans and vents to circulate cool air / blow out hot air (e.g., chamber exhaust fan, auxiliary part cooling fan, and chamber intake vent), but in warmer climates that may not be enough. [src]

Auto-calibration

H2S's auto-calibration attempts to adjust itself to account for the expected variances between manufactured H2S printers and variances caused by wear. Examples of calibrations include bed leveling (working around variances in the heatbed), motor noise cancellation, and vibration compensation.

Trigger auto-calibration manually by navigating to [Wrench Icon]SettingsCalibration. Perform auto-calibration whenever ...

⚠️NOTE️️️⚠️

There are optional modules to perform even tighter calibration. Specifically, the vision encoder.

Filament Loading

Filament can be loaded through either an AMS unit (e.g., AMS 2 Pro or AMS HT) or the external spool holder. The external spool holder is used when ...

⚠️NOTE️️️⚠️

The source doesn't cite this, but I know for a fact that TPU is not supported by the AMS 2 Pro and must be fed via the external spool holder (unless it's specifically branded as TPU for AMS, which Bambu Lab sells).

To load filament using the AMS 2 Pro, ...

  1. open the two tabs on the front edge and lift the cover.
  2. stick the spool into one of the four slots, ensuring that it sits on the slot's roller and rotates freely.
  3. push the slot's inlet release tab toward the spool and feed filament into that inlet - inlet will automatically grip and pull in filament.
  4. close the cover and lock it in by closing the two tabs on the front edge.
  5. select filament properties:

AMS 2 Pro top diagram

To load filament using the external spool holder, ...

  1. place filament on external spool holder, where filament tip faces up.
  2. push filament through PTFE tube until you feel resistance (should reach into printer's extruder).
  3. load filament into extruder:
    1. navigate to [Spool Icon] and ensure extruder icon is green (confirms filament reaches extruder).
    2. tap the external spool, then select filament brand, material, and color, then tap Confirm.
    3. tap Load (pulls filament into extruder).
  4. inspect as loading process performs a sample extrusion:

external spool diagram

[src]

Filament Refill

Most Bambu Lab filaments come wound up on twist-apart spools. Once the filament on the spool has been all used up, a refill may be purchased (refill means filament without a spool) and reinserted into the empty spool. Refills come pre-wound ready to be inserted directly on to the spool.

To refill a spool ...

  1. twist-apart the spool.
  2. place pre-wound refill over interior cylinder of spool, aligning refill's notch against the tiny square extrusion.
  3. place two sides of spool back together and twist until it clicks.
  4. remove plastic straps holding the refill's shape.
  5. place sticker on outside of the spool.

Depending on the type of material, some filaments come wound up on cardboard spools. Only plastic Bambu Lab spools are refillable, not cardboard.

filament refill diagram [src]

User Interface

The H2S's UI is exposed via a touch screen on the exterior of the front face, located on the top left.

touchscreen placement

Along the left side of the UI are 5 options, each represented by an icon:

  1. [Home]: Primary functions and readings (e.g., triggering prints, sensor readings, WiFi status, and statistics).
  2. [Controls]: Control panel for hardware settings (e.g., fan speed, nozzle and heatbed temperature, light, speed, and motion).
  3. [Filaments]: Control panel for filament management (e.g., AMS 2 Pro functionality and manually selecting material and color).
  4. [Settings]: Control panel for printer calibration as well as system and identity settings (e.g., account information, WiFi, firmware, and USB).
  5. [Health Monitoring System]: Printer diagnostics. [src]

The subsections below provide instructions on how to navigate to important parts of the UI.

Calibration

To calibrate the H2S, navigate to [Settings]CalibrationPrint Calibration, select the desired calibrations and hit Start. [src]

Print

To print, navigate to [Home]Print Files and select the drive and file to load. Two drives should be present:

Once a file is chosen, select the appropriate Plate and Nozzle (H2S comes with "Textured PEI" plate and "0.4mm Standard" nozzle - these should be selected as defaults). Then, hit Next and select the filament to print with. Then, hit Print to begin printing. [src]

Print Speed

To configure the printing speed, navigate to [Controls]Speed and select either Silent, Standard (default), Sport, or Ludicrous. [src]

⚠️NOTE️️️⚠️

An introductory YouTube video I watched mentioned that the faster the speed is, the lower quality the print will be. Some people are willing to accept lower quality prints in exchange for speed.

Toolhead and Heatbed Movement

To perform movements of the toolhead (XY axis) and heatbed (Z axis), navigate to [Controls]Motion and tap the adjustment buttons as necessary. [src]

⚠️NOTE️️️⚠️

This seems to only be for testing purposes and moving things to get at parts? I had to use this feature to get at a thin piece of plastic that popped off and fell on the bottom of the H2S. I moved the heatbed up so I could fit my hand in and reach it.

Extruder Movement

To perform ad hoc extrusion and retraction of filament, navigate to [Controls]Nozzle & Extruder and use the up/down buttons under Extruder. [src]

⚠️NOTE️️️⚠️

This seems to be for testing purposes. But also, does this have to be done when swapping between AMS 2 Pro and external spool holder?

Nozzle Type

When the nozzle has been swapped, navigate to [Controls]Nozzle & Extruder and select the nozzle's type under Nozzle. [src]

Nozzle Temperature

To set the nozzle's temperature, navigate to [Controls]Nozzle & Extruder and select the nozzle's temperature under Nozzle. [src]

⚠️NOTE️️️⚠️

This seems to only be for testing purposes and doesn't apply to any prints? AFAIK initiating a new print should unset this as the print needs specific temperatures based on the print and the filament used.

Heatbed Temperature

To set the heatbed's temperature, navigate to [Controls]Heatbed and select the temperature. [src]

⚠️NOTE️️️⚠️

This seems to only be for testing purposes and doesn't apply to any prints? AFAIK initiating a new print should unset this as the print needs specific temperatures based on the print and the filament used.

Chamber Temperature

To set the chamber's temperature, navigate to [Controls]Chamber and select the temperature. [src]

⚠️NOTE️️️⚠️

This seems to only be for testing purposes and doesn't apply to any prints? AFAIK initiating a new print should unset this as the print needs specific temperatures based on the print and the filament used.

Chamber Light

To turn the chamber's light on/off, navigate to [Controls] and toggle the Light switch. [src]

Heating and Cooling

To configure the H2S's internal climate, navigate to [Controls]Air Condition and select either Cooling or Heating. Individual parts that control the climate (e.g., fans, heaters, and exhausts) are listed and can be individually controlled. [src]

When the mode is set to ...

Filament Type

To select which filaments are in the AMS 2 Pro and / or external spool holder, navigate to [Filament] and select the desired spool to input the type, color, and manufacturer of filament. Bambu Lab filaments come with RFID that allows the AMS 2 Pro to automatically identify material and color. [src]

Filament Auto Refill

When a filament runs out, the H2S and attached AMS 2 Pro unit automatically swap to a second spool to continue printing, provided that second spool has the same brand, color, and material of the original spool being printed with. To enable auto refill, navigate to [Settings]AMS Options and select AMS Auto-Refill. Then, navigate to [Filament], select the wrench icon, and select Auto Refill to view refill relationships. [src].

⚠️NOTE️️️⚠️

On the H2D, there are 2 extruders (left and right) and apparently each of the H2D's AMS 2 Pro units is assigned to one of these heads (there may be multiple AMS 2 Pros per printer). The second spool must be in an AMS 2 Pro unit assigned to the same extruder for auto refill to use it.

Filament Drying

To dry filament, ensure the spool is loaded into the AMS 2 Pro and navigate to [Filament] and find the water droplet icon. Below the icon should be a humidity sensor reading. Select the water droplet icon and either ...

..., then select Start. [src]

⚠️NOTE️️️⚠️

What happens when the filaments within the AMS 2 Pro aren't all the same material? It seems there might be some guard rails preventing you from doing this with certain mixes of materials.

When drying high-temperature filament, you need to take out the low-temperature filament. For example, when drying ABS, PLA filament cannot be placed in the AMS.

[src]

⚠️NOTE️️️⚠️

Only some filament materials need an AMS HT for drying, not an AMS 2 Pro.

Filament Guide

The following table summarizes key characteristics of filaments supported by the H2S (as of time of writing). The column(s) ...

⚠️NOTE️️️⚠️

The list below isn't exhaustive, and some filament types of sub-types (e.g., Neon PLA) require specific hardware to print with (e.g., hardened steel nozzle or engineering build plate).

Name Stiffness Impact Strength Heat Deflection Temperature
(ISO 75)
Saturated Water Absorption Rate Nozzle temperature Heatbed temperature Chamber temperature Drying Resistance
PLA [src] 1.5/5 2/5 1.8 MPa 54C
0.45 MPa 57C
25C 55% RH 0.43% 190-230C 35-45C 25-45C 50C 8h Acid: no
Alkali: no
Organic solvent: some no
Oil/grease: most yes
Flammable: yes
PLA-CF [src] 2/5 1.5/5 1.8 MPa 54C
0.45 MPa 55C
25C 55% RH 0.42% 210-240C 35-45C 55C 8h Acid: no
Alkali: no
Organic solvent: some no
Oil/grease: most yes
Flammable: yes
PETG HF [src] 1/5 2.5/5 1.8 MPa 62C
0.45 MPa 69C
25C 55% RH 0.40% Acid: no
Alkali: no
Organic solvent: some no
Oil/grease: most yes
PETG-CF [src] 1.5/5 3/5 1.8 MPa 67C
0.45 MPa 74C
25C 55% RH 0.30%
ABS [src] 1/5 3/5 1.8 MPa 84C
0.45 MPa 87C
25C 55% RH 0.65% 240-270C 80-100C 45-60C 80C 8h Acid: yes
Alkali: yes
Organic solvent: some no
Oil/grease: some no
Flammable: yes
ABS-GF [src] 1.5/5 1/5 1.8 MPa 88C
0.45 MPa 99C
25C 55% RH 0.53% 260-280C 90-100C 60-70C 80C 8h Acid: yes
Alkali: yes
Organic solvent: some no
Oil/grease: some no
Flammable: yes
ASA [src] 1/5 3/5 1.8 MPa 92C
0.45 MPa 100C
25C 55% RH 0.45% 240-270C 80-100C 45-60C 80C 8h Acid: yes
Alkali: yes
Organic solvent: some no
Oil/grease: some no
Flammable: yes
ASA-CF [src] 2/5 0.5/5 1.8 MPa 102C
0.45 MPa 110C
25C 55% RH 0.33%
PC [src] 1.5/5 2.5/5 1.8 MPa 117C
0.45 MPa 112C
25C 55% RH 0.25% 260-280C 90-100C 45-60C 80C 8h Acid: no
Alkali: no
Organic solvent: some no
Oil/grease
Flammable: yes
PC FR [src] 1/5 3.5/5 1.8 MPa 108C
0.45 MPa 113C
25C 55% RH 0.12% 260-280C 90-100C 80C 8h Flammable: retardant
TPU 95A HF [src] 0.5/5 5/5 N/A 25C 55% RH 1.08%
TPU 90A [src] 0.5/5 5/5 N/A 25C 55% RH 0.61%
TPU 85A [src] 0.5/5 5/5 N/A 25C 55% RH 0.67%
TPU for AMS [src] 0.5/5 5/5 N/A 25C 55% RH 1.20% 220-240C 30-35C 70C 8h Acid: no
Alkali: no
Organic solvent: some no
Oil/grease: most yes
Flammable: yes
PA6-CF [src] 3/5 3/5 1.8 MPa 164C
0.45 MPa 186C
25C 55% RH 2.35%
PA6-GF [src] 2/5 2/5 1.8 MPa 158C
0.45 MPa 182C
25C 55% RH 2.56%
PAHT-CF [src] 2.5/5 3.5/5 1.8 MPa 170C
0.45 MPa 194C
25C 55% RH 0.88%
PET-CF [src] 3/5 2.5/5 1.8 MPa 182C
0.45 MPa 205C
25C 55% RH 0.37% 260-290C 80-100C 45-60C 80C 8-12h Acid: no
Alkali: no
Organic solvent: some no
Oil/grease: most yes
Flammable: yes
PPA-CF [src] 5/5 3/5 1.8 MPa 196C
0.45 MPa 227C
25C 55% RH 1.30%
PPS-CF [src] 4/5 1.5/5 1.8 MPa 235C
0.45 MPa 264C
25C 55% RH 0.05% 310-340C 100-120C 60-90C 100-140C 8-12h Acid: yes
Alkali: yes
Organic solvent: yes
Oil/grease: yes
Flammable: retardant
(self-extinguishing when away from fire)

⚠️NOTE️️️⚠️

Stiffness and impact strength columns come from the Bambu Lab product page for the specified filament. Remaining columns come from the Bambu Lab technical document sheet (TDS) for that product.

Build Plate Guide

A plate that sits on the heatbed and serves as the print surface. There are different types of build plates, each with different properties targeting different filament materials (4 as of time of writing):

The following table summarizes filament materials supported and material requirements for each build plate.

Build Plate Material Heatbed Temperature Glue Required?
Cool Plate SuperTack Pro PLA 40C No
Cool Plate SuperTack Pro PETG 60C No
Textured PEI Plate PLA/PLA-CF/PLA-GF 45-60C No
Textured PEI Plate ABS 90-100C Stick
Textured PEI Plate PETG/PETG-CF 60-80C No
Textured PEI Plate PET-CF 80-100C No
Textured PEI Plate TPU 85A/90A 35-45C No
Textured PEI Plate TPU 95A for AMS 35-45C Stick
Textured PEI Plate ASA 90-100C Stick
Textured PEI Plate PVA 45-60C No
Textured PEI Plate PC/PC-CF 90-110C Stick
Textured PEI Plate PA/PA-CF/PAHT-CF 90-110C Stick
Smooth PEI Plate PLA/PLA-CF/PLA-GF 45-60C No
Smooth PEI Plate PETG/PETG-CF 60-80C Stick/Liquid
Smooth PEI Plate ABS 90-100C Stick/Liquid
Smooth PEI Plate ASA 90-100C Stick/Liquid
Smooth PEI Plate TPU 35-45C Stick/Liquid
Smooth PEI Plate PVA 45-60C Stick/Liquid
Smooth PEI Plate PC/PC-CF 90-110C Stick
Smooth PEI Plate PA/PA-CF/PAHT-CF 90-110C Stick
Smooth PEI Plate PET-CF 80-100C Stick/Liquid
Engineering Plate PLA/PLA-CF/PLA-GF 45-60C Stick/Liquid
Engineering Plate PETG/PETG-CF 60-80C Stick/Liquid
Engineering Plate ABS 90-100C Stick/Liquid
Engineering Plate ASA 90-100C Stick/Liquid
Engineering Plate TPU 35-45C Stick/Liquid
Engineering Plate PVA 45-60C Stick/Liquid
Engineering Plate PC/PC-CF 90-110C Stick/Liquid
Engineering Plate PA/PA-CF/PAHT-CF 90-110C Stick/Liquid
Engineering Plate PET-CF 80-100C Stick/Liquid

Of the build plates listed, the ...

⚠️NOTE️️️⚠️

Textured PEI Plate only supports glue sticks, not liquid glue? The table just says "Yes" or "No" but doesn't explicitly mention either, but the header of that column says "Requires Glue Stick?" so I specifically put down stick.

Textured PEI Plate's buy page (where the Textured PEI portion of the table above comes from) also had an extra column about whether the cover should be removed, but that has nothing to do with the build plate? It's to prevent heat creep?

[src] [src] [src] [src] [src]

Bambu Studio

↩PREREQUISITES↩

Bambu Studio is H2S's desktop software. It provides access to MakerWorld (a repository of printable objects), processes 3D models for printing by slicing them, and controls and gets feedback from the H2S. [src] Bambu Studio works with many brands of 3D printers, not just Bambu Lab printers. [src].

⚠️NOTE️️️⚠️

There's also a software product called Bambu Suite, but that's for cutting and engraving while Bambu Studio is for printing.

User Interface

Bambu Studio has 6 main screens (referred to as tabs), which can be navigated between using the top toolbar:

  1. Home: Welcome screen, user manuals, opening projects, print history.
  2. Prepare: Object/model placement, orientation, and manipulation.
  3. Preview: Print instructions, information, and diagnostics.
  4. Device: H2S interface and management.
  5. Project: Informative fields describing project.
  6. Calibration: H2S calibration.

Above the top toolbar is the main menu, packed to condensed space. Next to the packed main menu are a few quick access buttons: Save, undo, and redo. Regardless of which screen you're on, the top toolbar (and main menu and quick access buttons) should always be present.

The standard workflow is to plan out what and where things get printed on the Prepare screen, then review how the print will get sliced along with diagnostics on the Preview screen, then initiate the print.

Bambu Studio top toolbar [src]

3D Viewport

Bambu Studio has a 3D viewport on both the Prepare screen and the Preview screen.

Bambu Studio's Prepare screen is for transforming models for print (e.g., orientation, scale, position, and color) as well as configuring print settings (e.g., layer height and infill density).

Prepare viewport controls:

Action Shortcut
Rotate camera 🖰 Left-drag
(ensure no object is selected)
Pan camera 🖰 Right-drag
Zoom camera 🖰 Scroll wheel
Select object 🖰 Left-click object
Select additional object Ctrl + 🖰 Left-click object
Select multiple objects Shift + 🖰 Right-drag green selection rectangle over objects
Deselect objects 🖰 Left-click area without object
Select all objects Ctrl + A
Move selected objects 10mm Arrow key (←, ↑, →, or ↓)
(ensure object is selected)
(movement occurs relative to camera's view)
Move selected objects 1mm Shift + Arrow key (←, ↑, →, or ↓)
(ensure object is selected)
(movement occurs relative to camera's view)
Undo Ctrl + Z
Redo Ctrl + Y

Bambu Studio's Preview screen is for exploring slices. Each screen is partitioned into a 3D viewport and a left sidebar.

Preview viewport controls:

Action Shortcut
Move vertical slider ↑ or ↓
Move horizontal slider ← or →
Toggle single layer view L
Pan camera 🖰 Right-drag
Zoom camera 🖰 Scroll wheel
Select multiple objects Shift + 🖰 Right-drag green selection rectangle over objects
Select additional object Ctrl + 🖰 Left-click object
Select all objects Ctrl + A
Move selected objects 10mm Arrow key (←, ↑, →, or ↓)
(ensure object is selected)
(movement occurs relative to camera's view)
Move selected objects 1mm Shift + Arrow key (←, ↑, →, or ↓)
(ensure object is selected)
(movement occurs relative to camera's view)
Undo Ctrl + Z
Redo Ctrl + Y

To the left of the 3D viewport is a sidebar.

Bambu Studio Prepare screen sidebar

The sidebar contains a ...

Project Filaments

↩PREREQUISITES↩

Bambu Studio has a section for defining which filaments are available to a project. The Project Filaments section is in the sidebar of the Prepare screen and the Preview screen.

Bambu Studio Prepare screen project filaments

Each filament is assigned an ID (e.g., 1, 2, ...). Objects and layers within the 3D viewport, rather than being assigned an exact filament, are instead assigned one of these IDs. The filament assigned to the ID number can be swapped to a different filament via the dropdown next to the ID, thereby automatically updating any areas of an object layer making use of that ID.

At the bottom is an Add Mixed Filament button. Mixed filaments is a mix of existing filaments printed in interleaved layers to achieve a new color via half-toning (e.g., alternating between 1 layer black and 1 layer white gives the impression that the printed object is gray). Mixed filaments are not recommended on the H2S because it's a single nozzle printer - excessive swapping between filaments causes a lot of waste. [src] [src]

⚠️NOTE️️️⚠️

Mixed filaments don't have the desired effect on top/bottom surfaces because those are single layers and only one color is printed per layer? They work best on near vertical walls. It may be possible to rotate the object such that top/bottom surfaces are reduced, but it'll likely require introducing supports.

⚠️NOTE️️️⚠️

There's a whole section on filament settings: https://bambulab.com/en/support/academy/3/course/982590125637046272/chapter/43. I don't think I ever need to mess with it if I'm using Bambu Lab filaments? The defaults should all work just fine?

🔍SEE ALSO🔍

Print Parameters

↩PREREQUISITES↩

Bambu Studio has a section for defining how models and model groupings (assemblies) are printed. The Process section is in the sidebar of the Prepare screen and the Preview screen.

Bambu Studio Prepare screen process

The Process section can change scope using a toggle (section 1). The scope can either be global, or it can target a specific set of objects (e.g., a model, an assembly, or some combination of models/assemblies). If not scoped globally, an object hierarchy will be displayed directly below the toggle (section 3). The selections in the object hierarchy will reflect those in the 3D viewport and vice versa.

Below the object hierarchy is a hierarchy of parameters that control printing:

A full accounting of parameters is beyond the scope of this section. Individual parameters will be referenced / explained in subsequent sections as needed.

[src]

Print Preview

↩PREREQUISITES↩

Bambu Studio will slice the objects on the build plate whenever ...

The Preview screen is where the layers, nozzle paths (G-code printing instructions), and printing diagnostics are color-coded and displayed to the user. The screen is broken up into the following controls / panels:

Bambu Studio Preview screen slicer example

  1. Layer slider: Scrubber that navigates between layers, highlighting those layers in the 3D viewport.
  2. Path slider: Scrubber that navigates the nozzle path of the layer, highlighting in the 3D viewport what actually gets printed as the toolhead / nozzle moves from beginning to end.
  3. Layer range toggle: If toggled, the layer slider will have two handles identifying a range of layers to highlight. If not toggled, the layer slider will have only one handle, meaning it will target exactly 1 layer for highlighting.
  4. 3D viewport: Visualized layers and paths.
  5. Slice result: Dialog mapping of path colors to meaning. In the above example, the colors map to print speeds.
  6. Color scheme: Remaps colors to different metrics / diagnostics. In the above example, the colors map to print speeds. But, if this were instead changed to Temperature, it would map colors to nozzle temperatures at each point in the path.

There are several color schemes available. A full accounting is outside the scope of this section.

[src]

Project Persistence

Bambu Studio saves and loads project state as a 3MF file.

Alternatively, Bambu Studio's Home screen integrates MakerWorld. MakerWorld is an online repository of printable projects, openable as if opening a local project. [src]

Object Importing

↩PREREQUISITES↩

Import 3D objects into the project either via ...

Bambu Studio Prepare screen toolbar

The file formats supported by the import function span both graphics formats (e.g., OBJ) and manufacturing formats (e.g., STL).

⚠️NOTE️️️⚠️

Bambu Studio can export the project's 3D objects under FileExport.

⚠️NOTE️️️⚠️

A complete accounting of file formats isn't appropriate here. Just note that, if you're importing SVGs, SVGs have no height. Once an SVG is imported, Bambu Studio gives it a tiny height and then you can scale it to make it taller.

Alternatively, Bambu Studio's Home screen integrates MakerWorld. MakerWorld is an online repository of printable projects. MakerWorld projects can't be imported directly into the current Bambu Studio project. However, it is possible to open a MakerWorld project, save it as a 3MF file (or export as some other file format), and import that file into an existing project. [src]

Object Placement

↩PREREQUISITES↩

In the Prepare screen's 3D viewport, objects can be moved by either ...

⚠️NOTE️️️⚠️

Objects typically can't be lifted off the build plate without first merging. See Bambu Studio/Object Combining.

Object Rotation

↩PREREQUISITES↩

In the Prepare screen's 3D viewport, selected objects can be manually rotated by using the rotation tool in Prepare screen's toolbar (button 7, keyboard shortcut R), which will present rotational axis circles that can be left-click dragged and a pop-up with angles.

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen rotation parameters

Alternatively, an object may be rotated via ...

Object Scale

↩PREREQUISITES↩

In the Prepare screen's 3D viewport, selected objects can be manually scaled by using the scale tool in Prepare screen's toolbar (button 8, keyboard shortcut S), which will present scale axis points that can be left-click dragged and a pop-up with scaling parameters.

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen rotation parameters

The screenshot above has the following sections:

  1. Coordinates - ?

  2. Scale - Percentage scaled vs original size (X, Y, and Z).

    Size - Absolute size on an axis (X, Y, and Z).

  3. uniform scale: If clicked, the other axes will maintain proportions by automatically scaling to be based on a single axis that was scaled. [src]

⚠️NOTE️️️⚠️

I couldn't figure out what the Coordinates dropdown actually does?

Object Combining

↩PREREQUISITES↩

In certain cases, two objects may need to combine into one for printing, such that they print as a single object vs two separate objects.

In the Prepare screen's 3D viewport, select two or more objects, then right-click to open the context menu and select Merge. Merged objects are placed under a single assembly.

Bambu Studio Prepare screen assembly example

Once objects are within a single assembly, they can be manually moved into each other and / or levitated off the build plate using the move tool (Prepare screen's toolbar button 6, keyboard shortcut M). If objects aren't merged but occupy the same space, slicing will print them as if they're distinct. That is, if two objects occupy the same space, the outer shell / wall of both objects will be drawn inside each other.

Bambu Studio Preview screen conflicting objects vs non-conflicting objects

⚠️NOTE️️️⚠️

Doing a mesh boolean union also fixed this outer wall drawing problem.

Alternatively, an object can be loaded and combined with an existing object at the same time. In the 3D viewport, right-click the existing object to open the context menu and navigate to Add PartLoad and select the new object to combine with in the file selection dialog. The objects will be combined in the same way (as an assembly).

🔍SEE ALSO🔍

Bambu Studio Prepare screen toolbar

⚠️NOTE️️️⚠️

You can push objects into each other without putting them under the same assembly, but it'll complain during slicing.

Alternatively, two objects can be repositioned and reoriented such that they touch each other using the assembly tool (Prepare screen's toolbar button 12, keyboard shortcut Y). The assembly tool opens a pop-up used to target how and where the objects touch.

Bambu Studio Prepare screen assemble parameters

The assembly tool has two Mode options:

[src] [src]

⚠️NOTE️️️⚠️

Technically, merging into an assembly isn't required to use the assembly tool in the toolbar. But, if the intent is to stack the objects on top of each other such that one of them has a face off the build plate, it won't work (both objects will be forced back down to touch the build plate).

⚠️NOTE️️️⚠️

The mesh boolean tool (button 11, keyboard shortcut B) can be used to merge the parts of an assembly back into a single model. The mesh boolean tool takes multiple objects (e.g., parts of an assembly or multiple high-level models) and performs a boolean operation on them (e.g., union, intersect, subtraction). So, to combine an assembly to a single object, use the union option.

🔍SEE ALSO🔍

Object Painting

↩PREREQUISITES↩

In the Prepare screen's 3D viewport, selected objects can be painted by using the paint tool in Prepare screen's toolbar (button 13, keyboard shortcut N), which will present a pop-up with painting parameters / controls.

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen painting parameters

⚠️NOTE️️️⚠️

Ensure more than 1 filament is included in the project via the Project Filaments section in the Prepare screen's left sidebar. Otherwise it'll be impossible to paint anything as there'll just be 1 color.

The remaining fields change based on which painting tool is used. When the paint tool is ...

Bambu Studio Prepare screen painting example

[src]

Object Supports

↩PREREQUISITES↩

Areas of an object that are overhangs may require supports. Supports are temporary additions added under these parts to help keep them stable during printing (e.g., prevent sagging). Supports easily snap off once the print completes.

To have Bambu Studio automatically generate supports, enable the property SupportEnable support. Supports will only be visible in the Preview screen (the screen responsible for showing slices), not this screen (Prepare screen).

Bambu Studio Prepare screen enable supports

The anatomy of a support includes ...

The subsections below discuss each of the above items in more detail.

[src] [src] [src]

⚠️NOTE️️️⚠️

What features qualify as a "critical region"? The documentation goes into further details: Cantilevers and sharp tails.

No sense going over that information here.

⚠️NOTE️️️⚠️

The documentation goes over advanced controls near the second half of the page. It might be too much detail to cover here.

Support Type

↩PREREQUISITES↩

Supports come in two types: Normal and Tree.

Bambu Studio Prepare screen support type

Each type comes in either auto mode or manual mode. When the mode is ...

🔍SEE ALSO🔍

The support's type defines the geometry generated:

⚠️NOTE️️️⚠️

See source to figure out how default switches between and organic. Out of scope for this document.

Normal supports work best with large planar overhangs, giving better surface quality vs tree supports. Tree supports often give better results with complex objects where overhang are small and / ot not planar. When in doubt, use tree supports in hybrid style, because it will explicitly check for planar overhangs and those areas to generate normal supports while the remaining areas get tree supports. [src]

Support Gaps

↩PREREQUISITES↩

The gap between supports and the printed object defines how tightly the support adheres to the object vs how easily it can be ripped off the object. Gaps are controlled through properties under SupportAdvanced:

⚠️NOTE️️️⚠️

Bottom Z distance is exclusively for supports spanning between areas of the printed object vs between build plate and object? There is no documentation for this parameter.

Support gaps diagram

Bambu Studio Prepare screen support gap properties

If these gaps are set too small, the support may be difficult to remove or even fuse to the object (unless using dedicated support material such as Support for PLA). If set too large, the overhanging surface may appear rough or sagging due to insufficient supports. For example, ...

⚠️NOTE️️️⚠️

The documentation says to treat these gap parameters not as independent parameters but as related parameters. To achieve desired results, make sure to tune them together.

[src] [src]

Support Interface

↩PREREQUISITES↩

Interface layers are support layers that touch the object, while the rest of the support body is referred to as the base. Bambu studio allows targeting specific materials for a support's base and interface. Navigate to the properties under SupportFilament for Supports. The property ...

Bambu Studio prepare screen support filaments

Additionally, properties under SupportAdvanced:

⚠️NOTE️️️⚠️

No idea how "Independent support layer height" would work given that there's asymmetry in the layer heights? Would it support layers first and then the object layers? What happens if there's a chance for collision?

Bambu Studio Prepare screen support interface properties

[src] [src]

Support Painting

↩PREREQUISITES↩

In certain cases, it's beneficial to manually specify which areas of the object to explicitly support and unsupport. Two mechanisms exist for this: painting and blockers/enforcers.

Where supports generate depends on type of supports being added (e.g. tree supports). If the type is set to ...

Bambu Studio Prepare screen support auto tree example

Bambu Studio Prepare screen support manual tree example

[src]

⚠️NOTE️️️⚠️

The example above isn't a valid print, but for some reason Bambu Studio isn't showing a warning / error popup slicing.

Raft

↩PREREQUISITES↩

A raft is a type of support that elevates an object off the build plate. Rafts are commonly used ...

🔍SEE ALSO🔍

Navigate to the properties under SupportRaft. The property ...

Bambu Studio Preview screen support raft

[src] [src]

⚠️NOTE️️️⚠️

The source mentions a couple of other parameters that are not present: First layer density and first layer expansion. I'm not sure if these have been removed, but I don't see them in my version of Bambu Studio.

Raft contact Z distance description inside Bambu Studio mentions that the parameter is ignored for "soluble interfaces". I'm not sure what that term means. Also, I don't know why there'd need to be a gap between the raft and the object? How would it stop the object from sagging if there's a gap?

Object Cutting

↩PREREQUISITES↩

In certain cases, an object may either need to be cut (e.g., oversized for printer) or may benefit from being cut (e.g., minimize need for supports or make it easier to sand/paint/finish). Cut pieces are typically assembled and fused back together after printing (e.g., glue, pen welding, joinery).

In the Prepare screen's 3D viewport, an object can be cut by selecting it and clicking cut tool in the Prepare screen's toolbar (button 10, keyboard shortcut C), which will open a pop-up, present a cutting plane in the 3D viewport, and present cutting plane rotational axis and offset height controls in the 3D viewport.

Bambu Studio Prepare screen toolbar

The cutting tool has two modes, chosen using the Mode dropdown at the top of the pop-up:

[src] [src]

⚠️NOTE️️️⚠️

The mesh boolean tool (button 11, keyboard shortcut B) can be used to merge the parts of an assembly back into a single model. The mesh boolean tool takes multiple objects (e.g., parts of an assembly or multiple high-level models) and performs a boolean operation on them (e.g., union, intersect, subtraction). So, to combine an assembly to a single object, use the union option.

Object Set Operations

↩PREREQUISITES↩

In the Prepare screen's 3D viewport, selected objects can have set operations applied (e.g., union, intersection, and subtraction) by using the mesh boolean tool in Prepare screen's toolbar (button 11, keyboard shortcut B), which present a pop-up with which which operations to apply.

Bambu Studio Prepare screen toolbar

Bambu Studio prepare screen mesh boolean parameters

The mesh boolean tool has 3 possible operations:

Regardless of which you pick, you can specify which of the selected models to apply the operation to. The resulting operation creates a single model with the chosen set operation applied (not an assembly of models, but a single model).

Given that the mesh boolean tool creates a single new model, the resulting single model typically doesn't encounter overlap issues during slicing. For example, if models aren't union'd but occupy the same space, slicing will print them as if they're distinct. That is, if two models occupy the same space, the outer shell / wall of both models will be drawn inside each other.

Bambu Studio Preview screen conflicting objects vs non-conflicting objects [src]

⚠️NOTE️️️⚠️

Merging two objects under the same assembly also fixed this outer wall drawing problem.

🔍SEE ALSO🔍

Negative Parts

↩PREREQUISITES↩

A negative part is an object that gets combined with an existing set of objects (same assembly), but it's purpose is to subtract areas of the existing objects. Any region of the existing objects that intersect with the negative part are cut out during slicing.

Bambu Studio Prepare screen negative part example Bambu Studio Preview screen negative part example

To add a negative part, right-click on an object to open the context-menu and navigate to Add negative part and select either a primitive or Load... to import a model. The negative part will be placed under an assembly along with the parts of the original object.

As shown in the screenshots above, negative parts appear slightly transparent when viewed in the Prepare screen and can be manipulated just like any other object. However, in the Preview screen, any region of the existing objects that intersect with the negative part are cut out during slicing.

⚠️NOTE️️️⚠️

This is similar to subtraction using the mesh boolean tool in the Prepare screen's toolbar. However, unlike the mesh boolean tool's subtraction, the original model being subtracted stays around and can be moved and scaled and rotated, which is useful if you want to quickly make changes after the fact.

[src]

Modifier Parts

↩PREREQUISITES↩

A modifier part is an object that gets combined with an existing set of models (same assembly), but it's purpose is to modify properties of specific areas of existing models. Any region of the existing models that intersect with the modifier part have the modifier part's properties applied.

Bambu Studio Prepare screen modifier part example Bambu Studio Preview screen modifier part example

To add a modifier part, right-click on an object to open the context-menu and navigate to Add modifier and select either a primitive or Load... to import a model. The modifier part will be placed under an assembly along with the parts of the original object.

As shown in the screenshots above, modifier parts appear gold when viewed in the Prepare screen and can be manipulated just like any other model. However, in the Preview screen, any region of the existing models that intersect with the modifier part have their properties changed to that of the modifier part (e.g., change filament color or apply fuzzy skin).

Common use cases for modifier parts include ...

⚠️NOTE️️️⚠️

There's also a related feature called a height range modifier. It adjusts based on height. For example, top of very tall models can printer slower at higher layers for stability or top heavy models can have infill density increased at lower layers to stabilize.

[src] [src]

Object Text

↩PREREQUISITES↩

Text can be placed on an object, extruded from an object, indented on to an object, or placed as a standalone extruded object on its own.

To generate text as a standalone object, in the Prepare screen's 3D viewport, click the text shape tool in the Prepare screen's toolbar (button 14, keyboard shortcut T). Text will show up in the middle of the build plate on the 3D viewport along with a pop-up where the text and its settings (e.g., font parameters) can be changed.

All parameters in the pop-up should be self explanatory, with the exception of Angle. Angle is the rotation of the text, which reflects the rotation circle in the 3D viewport.

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen text parameters

To place text on an object, in the Prepare screen's 3D viewport, select the object and then click the text shape tool in the Prepare screen's toolbar (button 14, keyboard shortcut T). Text will show up on the object along with a pop-up where the text, its settings (e.g., font parameters), and how its placed on the object can be changed.

The parameters are the same as the parameter before, except for Mode and Operation.

Bambu Studio Prepare screen text on object parameters

[src] [src]

Object Iconography

↩PREREQUISITES↩

An SVG outline can be placed on an object, extruded from an object, indented on to an object, or placed as a standalone extruded object on its own.

To generate a standalone SVG outline, right-click on to empty space (not on an object) to open the context-menu and navigate to Add PrimitiveSVG. In the pop-up dialog that shows up, select an SVG file. The selected SVG will show up in the 3D viewport as slightly extruded (Z-scale to adjust the extrusion).

To place an SVG outline on an object, right-click on an object to open the context-menu and navigate to Add PrimitiveSVG. In the pop-up dialog that shows up, select an SVG file. The selected SVG will show up in the 3D viewport as slightly extruded (Z-scale to adjust the extrusion). The SVG wil show up on the object along with a pop-up where and how the SVG placed on the object can be changed.

Bambu Studio Prepare screen icon on object parameters

The majority of the parameters are self-explanatory.

⚠️NOTE️️️⚠️

There's some weirdness about how the icon is projected on to the surface of the object. If you have something with a curved surface (e.g., cone) and project a large icon that wraps around the cone, it only applies the part of the icon that's projected on to the viewport? If you apply it and then rotate the object, you'll see that the sides you weren't looking at didn't have the icon cut off

[src]

Layer Height

↩PREREQUISITES↩

Layer height is the height of each layer in the print. The thinner the layer, the less ridges are visible as the object is printed upwards (Z axis), meaning a smoother overall appearance.

To set the layer height globally, ensure no object is selected and navigate to the properties under QualityLayer height:

In addition, there are presets available for choosing common layer heights. These presets typically also set other other options, such as printing speeds.

Bambu Studio Prepare screen layer height parameters

⚠️NOTE️️️⚠️

Setting different layer heights for each object? You might need to print the objects individually or slicing will fail. Set OtherSpecial modePrint sequence to By object.

There might be issues where the toolhead can move depending on height of objects being printed. See here for potential way to mitigate (change print order).

⚠️NOTE️️️⚠️

There's an option here called "Mixed color sublayer" that seems to have to do with "fake color" printing where alternating real colors are banded together to generate some other color (e.g., alternating between black and white to get 50% gray). When this setting is set, it seems that the layer height is automatically cut down for coloring purposes? So if you set the layer height to 0.2mm but this option were turned on, that 0.2mm would actually be subdivided into n thinner layers? At least that's the vibe I got from https://www.reddit.com/r/BambuLab/comments/1ssuuqx/color_mixing_and_mixed_color_sublayer_wrt_layer

The initial layer height is recommended to be 50% of the nozzle's diameter. Subsequent layers are recommended to be between 20% to 70% of the nozzle's diameter. For example, if using the 0.4mm nozzle that comes with the H2S, the initial layer would be set to a layer height of 0.2mm and the remaining layers can be set to anywhere between 0.08mm to 0.28mm. This information is also available under the printer setting's Extruder section.

Bambu Studio printer settings extruder layer height limits

Variable Layer Height

↩PREREQUISITES↩

In certain cases, it's more efficient for an object's layer height to be variable. For example, consider printing a half sphere. As the layers converge to the top of the half sphere, the slope gets more and more horizontal, leading to obvious stepping.

Bambu Studio Preview screen sphere tip stepping example

One way to mitigate stepping is to set the layer height to something very small (e.g., 0.08), but doing so is inefficient as the majority of the sphere doesn't have such a problematic slope. A more appropriate way to mitigate is to use the variable layer height tool. In the Prepare screen's 3D viewport, select an object and click the variable layer tool in the Prepare screen's toolbar (button 5), which will ...

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen variable height tool parameters

The right panel pop-up represents the layer height of the object. As the mouse scans over it bottom to top, the corresponding object in the 3D viewport should highlight indicating what portion of the object the current mouse position controls. At any height in the right panel, ...

The dialog pop-up provides functionality to algorithmically set / manipulate the variable layer height (as opposed to the manual setting happening above):

⚠️NOTE️️️⚠️

From this page:

When using variable layer height, avoid overly sharp changes in the layer height curve—meaning changes that occur too abruptly. Sudden transitions in layer height can leave visible marks or banding on the model’s surface.

As shown in the image, the left example features a steep and jagged layer height curve, which leads to noticeable surface artifacts. On the right, smoother transitions result in a cleaner and more uniform surface finish.

When applying variable layer heights, ...

⚠️NOTE️️️⚠️

What about other styles of tree supports (e.g., tree slim)? Other styles seem to not produce an error.

[src]

🔍SEE ALSO🔍

[src] [src]

Line Width

↩PREREQUISITES↩

Line width is the width of filament extruded by the nozzle during printing. To get the extruded filament to lay down either wider or thinner, the print speed changes and / or the rate at which filament is being pushed out changes (flow rate). For example, to print with a wider line width, the nozzle's head may print at the same speed but push out more filament. That is, the layer is being printed at a specific height and speed, but pushing out more filament at that layer height and speed causes that extra filament to get flattened by the nozzle's tip as it's being laid down, spreading to the desired line width.

⚠️NOTE️️️⚠️

Because having a wider line width relies on something being under the nozzle to squish against, it won't work when printing overhangs and bridges. Does this apply to overhangs and bridges that have supports? Probably, because unless you're using specific Bambu Lab filaments intended to be used as supports, there typically is both a XY-axis gap and Z-axis gap between the support and what it's supporting (with support filaments you can set these gaps to 0 but with normal filaments that gap needs to be there to make it easy to break off supports).

To set the line width, navigate to the properties under QualityLine width:

⚠️NOTE️️️⚠️

Although First layer may help with bed adhesion, it also may make elephant foot phenomenon worse? I'm not sure.

Bambu Studio Prepare screen line width parameters

The line width is recommended to be 75% to 150% of the nozzle's diameter. Otherwise, the print quality will likely be poor. For example, if using the 0.4mm nozzle that comes with the H2S, the line width should be between 0.3mm and 0.6mm.

⚠️NOTE️️️⚠️

When referring to the nozzle's diameter, it means the diameter of the channel that the filament extrudes through, referred to as the inner diameter. The outer diameter is the diameter of the wall encasing the inner diameter.

[src]

Object Seam

↩PREREQUISITES↩

A seam is a mark that shows up when the toolhead prints an enclosed path, showing up where the start and end of the path meet. The screenshot below highlights where seams will show up on an example object once printed.

Bambu Studio Preview screen object seam aligned example

There are several ways to control the appearance of seams: Algorithmic placement (e.g., hiding seams on edges), manual placement (e.g., seam painting), and specialized printing techniques (e.g., scarf seams). The subsections below detail the common methods to mitigate seams.

⚠️NOTE️️️⚠️

Although not documented in any of the subsections below, the fuzzy skin feature can also help mitigate the appearance of seams by introducing a randomly jittered textured outside.

⚠️NOTE️️️⚠️

Where as normally there's a single seam on an object, the Arachne wall generator causes multiple starts/stops per path, meaning multiple seams.

🔍SEE ALSO🔍

Algorithmic Seam Placement

Bambu Studio can algorithmically control the placement of seams in several ways. The easiest is through the QualitySeamSeam position parameter. The value ...

Bambu Studio Prepare screen seam parameters

Bambu Studio Preview screen object seam back example Bambu Studio Preview screen object seam random example Bambu Studio Preview screen object seam nearest example

[src] [src]

Seam Painting

↩PREREQUISITES↩

Similar to object painting, the placement of a seam can be painted on to the object. In the Prepare screen's 3D viewport, select the object and paint a seam by using the seam paint tool in Prepare screen's toolbar (button 17, keyboard shortcut P), which will present a pop-up with painting parameters / controls.

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen seam painting parameters

Seam painting is operationally similar to normal object painting:

During slicing, the seam should show up in the areas painted forced / not show up in areas painted prohibited.

[src] [src]

Scarf Seam

↩PREREQUISITES↩

A scarf seam is a specialized form of seam, intended to hide its appearance for objects that are round to the point where the seam can't be hidden (e.g., sphere, cylinder, or some round object that contains no natural edge for the seam to hide). At the ...

The end result is the the start-stop region partially overlap vs a hard start-stop, blending in better.

-------------.  ,-----------
     end   ,' ,'
         ,' ,'
       ,' .'
     .' .'  
   .' .'   start
--'  '-------------

For scarf seams to be enabled, the filament being printed with must have scarf seams enabled in its filament settings: In the Prepare screen's sidebar, navigate to Project Filaments, then select the ellipsis for the desired filament and navigate to FilamentFilament scarf seam settings

Bambu Studio filament scarf seam settings

⚠️NOTE️️️⚠️

Unsure what "Contour" and "Contour and Hole" refer to? It has something to do with https://wiki.bambulab.com/en/software/bambu-studio/xy-hole-contour-compensation.

Unsure what the slope gap parameter actually does? It leaves a gap in the inner wall so the exterior wall can bleed extra material into it?

Scarf start height is the starting height that the scarf seam starts printing at, as shown in the following ASCII diagram.

-------------.  ,-----------
     end   ,' ,'
         ,' ,'
       ,'  '
     .'    | 
   .'      | start
--'        '------------------

Bambu Studio Prepare screen seam parameters

In the object's parameters, ...

[src]

Fuzzy Skin

↩PREREQUISITES↩

Fuzzy skin is a rough texture targeting the outside wall of an object and potentially holes within that object (just the walls, top and bottom surfaces won't be textured). It does this by adding random jitters to wall paths during slicing. The purpose of fuzzy skin is two-fold: It's either aesthetic, or it's intended to make the printed object easier to grip, or both.

Bambu Studio Prepare screen fuzzy skin example

Fuzzy skin parameters are under OthersSpecial mode.

Bambu Studio Prepare screen fuzzy skin parameters

To enable/disable fuzzy skin set the property Fuzzy skin to either ...

If enabled, the parameter ...

⚠️NOTE️️️⚠️

Why would you want to texture inner walls? Makes no sense? Doesn't also conflict with the infill?

[src] [src]

Fuzzy Skin Painting

↩PREREQUISITES↩

Rather than having walls be fuzzy skinned in their entirety, the object can have fuzzy skin painted on to particular areas such that only those painted areas print as fuzzy skin. In the Prepare screen's 3D viewport, select an object and click fuzzy skin painting in the Prepare screen's toolbar (button 19, keyboard shortcut H). Bambu Studio will open a pop-up and present an isolated view of the object where areas can be painted.

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen fuzzy skin painting example Bambu Studio Preview screen fuzzy skin painting example

Tool options and controls are nearly exactly the same as those for normal object painting. Select a Tool type and the tools configuration options will show up directly underneath. Regardless of the tool type, ...

To move the viewport rather than paint (e.g., move camera, rotate camera, and zoom camera), use the same viewport controls as normal with the exception that any mouse button presses required are not on the object to be painted.

For painted fuzzy skin to be applied to the print, ensure OtherSpecial ModeFuzzy Skin is set to None(allow paint).

[src]

Skirt

↩PREREQUISITES↩

A skirt is one or more loops printed around the objects on the build plate, where there's a gap between the loops and the objects (not touching). The purpose of a skirt is to prime the nozzle. It's typically not required on the H2S because the nozzle already gets primed when a print starts by printing a small line, called a prime line.

Nevertheless, skirt loops can be enabled through the property OtherBed AdhesionSkirt loops and Skirt height. The example below has 4 loops set at a layer height of 2.

Bambu Studio Prepare screen skirt loop example

⚠️NOTE️️️⚠️

Skirt loop parameters only show up when the scope is set to global, not on an object / set of objects.

[src] [src]

Object Brims

↩PREREQUISITES↩

A brim is several outer walls added around the bottom layer of a printed object, such that the object has a bottom similar to the brim of a top hat. Its purpose is to enhance bed adhesion of objects ...

Brim parameters are under OtherBed Adhesion.

Bambu Studio Prepare screen brim parameters

The parameter ...

⚠️NOTE️️️⚠️

If gap is 0 but there's still a gap showing up between the brim and the object, it may be that QualityElephant foot compensation is non-zero. Set it to 0.

🔍SEE ALSO🔍

Bambu Studio Preview screen brim example

[src] [src]

Brim Ears

↩PREREQUISITES↩

A brim ear is a point / stretch of brim at user-defined locations around the bottom of an object. Similar to object painting, the placement of brim ears can be painted on to the object. In the Prepare screen's 3D viewport, select the object and paint brim ears by using the brim ear tool in Prepare screen's toolbar (button 18, keyboard shortcut E), which will present a pop-up with painting parameters / controls.

Bambu Studio Prepare screen toolbar

Bambu Studio Prepare screen brim ears

For brim ears to be printed, ensure OtherBed AdhesionBrim type is set to Painted. Otherwise, a warning will display at the bottom of the pop-up as shown in the example above.

To place brim ears manually, left-click around the base of the object. When a brim ear is placeable, a partially transparent brim ear will show under the mouse, notifying that a brim ear can be placed in that spot. The brim ear's size is controlled by the Head diameter parameter, which is the diameter of the brim ear in mm.

To place brim ears automatically, use the Aut-generate points button. Where brim ears get placed depends on ..

⚠️NOTE️️️⚠️

Brim ears will be invisible once exiting this tool, only being visible again when re-entering the tool on the same object or in the Preview screen post-slicing.

⚠️NOTE️️️⚠️

I found this as well: https://wiki.bambulab.com/en/software/bambu-studio/use-disc-to-avoid-warping. This seems to be doing the same thing as brim ears but its entirely manual? Maybe it was made for an older version of Bambu Studio where brim ears feature wasn't available.

[src]

Object Walls

↩PREREQUISITES↩

The number of walls printed for an object (Z axis) is set through the parameter StrengthWallsWall loops. The more walls, the stronger the print is (presumably). It's recommended that for ...

The number of solid layers for the top of the object is set through the parameter StrengthTop/bottom shellsTop shell layers. The thickness of the top shell should approximately match the thickness of the walls. For example, if the thickness of 5 walls comes out to 5mm, then the number of top shell layers should approximately come out to 5mm as well.

⚠️NOTE️️️⚠️

Prior to the top shell is the infill material. The infill material almost always has gaps, and so the that first shell layer is bridging all those gaps.

Similarly to the top shell layers, the number of solid layers for the bottom of the object is set through the parameter StrengthTop/bottom shellsBottom shell layers. It's recommended that the bottom shell have a minimum of 4 layers to ensure a sturdy and flat foundation.

⚠️NOTE️️️⚠️

Why shouldn't the bottom shell have the same thickness as the walls and top shell? Wouldn't that make more sense in that it's unified?

Bambu Studio Preview screen wall and shell parameters

⚠️NOTE️️️⚠️

There are the alternative parameters Top shell thickness / Bottom shell thickness that set using mm instead of number of layers. When set, the number of layers chosen is the maximum between Top shell layers / Bottom shell layers and the number of layers needed to match the thickness of Top shell thickness / Bottom shell thickness.

[src]

Object Infill

↩PREREQUISITES↩

While the exterior of a printed object are walls / surfaces, the interior area of is printed as an infill pattern. An infill patterns is a pattern where the user controls how densely the pattern is printed, where higher densities are typically associated with greater strength / greater load bearing capacity.

Infill parameters are found under StrengthSparse infill:

In addition to the standard infill, it's possible to specify infill patterns for the top and bottom surfaces using the parameters StrengthTop/bottom shellsTop surface pattern and Bottom surface pattern. The patterns available are more limits than the full roster of infill patterns.

⚠️NOTE️️️⚠️

Top/bottom shells also get infills at no sparsity (100% fill), called internal solid infills? The top/bottom shells don't include the top-most and bottom-most layers? So if you have 5 top shells, the 5th one (top-most) isn't internal solid infilled, but all the ones before are? That's what this is telling me.

⚠️NOTE️️️⚠️

Top/bottom surface patterns seem to only be line based infill patterns where lines don't intersect? And you can't set density? It seems to be maximum density?

What's the point of having these? I guess it has to do with the finish of the surface? I recall there was some option where you could have the heated nozzle go over the surface (without printing anything) to further smooth it out? I think it was under QualityIroning.

[src] [src]

Failure Modes

The subsections below detail how to inspect and diagnose aspects of the print.

XY Hole and Contour Fit

↩PREREQUISITES↩

Printed objects that require accurate fitting with other components (e.g., screws or other printed parts) sometimes don't fit they way they should because of variances introduced during printing. For holes and contours running running down the Z-axis, Bambu Studio provides calibration steps to compensate for these variances:

Bambu Studio Prepare screen contour hole example

The process involves printing a test object and either using calipers or a standard screw to determine how far off the hole/contour is from its intended baseline. That value can then be inserted into an object's properties under QualityPrecisionX-Y hole compensation and X-Y contour compensation.

Bambu Studio Prepare screen hole and contour compensation properties

⚠️NOTE️️️⚠️

The auto compensation option in the screenshot above disables the manual compensation fields? Description says it works with the basic set of filaments (e.g., PLA and PETG) - maybe it's good enough?

⚠️NOTE️️️⚠️

Remember that holes and contours on the z-axis are holes that are compensated for using XY hole contour compensation. It does not compensate for sideway holes.

Hole / contour compensation may be needed because ...

🔍SEE ALSO🔍

For full instructions along with what exactly to print / measure, see the source document.

[src] [src]

XY Hole and Contour Gap

↩PREREQUISITES↩

On a layer, gaps below a certain threshold are merged during slicing. This threshold is controlled via the property under QualityPrecisionSlice gap closing radius. Any gap smaller than 2x this property's value is automatically closed during slicing (e.g., if set to 0.05mm, gaps smaller than 0.1mm are closed).

Bambu Studio Prepare screen hole and contour compensation properties

Bambu Studio Preview screen closed gap example Bambu Studio Preview screen no closed gap example

In the examples above, the first screenshot has Slice gap closing radius set to 0.13mm while the second screenshot has it set to 0.02mm.

[src]

XY Hole and Contour Thinness

↩PREREQUISITES↩

By default, slicing removes or distorts areas of a contour / hole where the shape is a thin stretch, pin extrusion, or sharply acute corner. That is, if there are two points on the shape's outline with a distance less than the line width, it wouldn't be able to reliably print and so the slicer attempts to work around the "thinness" by distorting or removing it. Real world examples where this might be encountered include models containing of fan blades, thin tubes, line art, and small text.

⚠️NOTE️️️⚠️

These areas are colloquially referred to as thin walls (not to be confused for a printed object's walls), because the problematic shape often (but not always) resembles a thin wall-like structure.

Bambu Studio Prepare screen fine detail ignored example Bambu Studio Preview screen fine detail ignored example

One workaround is to narrow the line width of the entire object being printed. However, a more appropriate and efficient workaround is to set the property QualityWall generator to → Arachne. Of the two options for QualityWall generator, ...

Arachne helps mitigate the thinness problem described above at the expense of more seams. That is, where as there's typically a single seam on an object, with Arachne there may be multiple seams. Arachne starts and stops rather than pushing out a continuous stream of filament, and so each start-stop results in a seam.

⚠️NOTE️️️⚠️

There's also an option for the classic wall generator to help with this thinness problem: Detect thin wall. It seems to be more problematic to use than Arachne wall generator? See source for more information.

Bambu Studio Prepare screen Arachne properties

Once Arachne is enabled, the extra properties displayed in the screenshot above become present:

⚠️NOTE️️️⚠️

The other properties seem like advanced properties that control knobs/levers of the algorithm? It might not make sense to document them here because, even though the source documents them, they seem like internal concepts and it doesn't say what sense there is in changing them?

⚠️NOTE️️️⚠️

What happens to all the normal line width properties once Arachne is enabled? Do they just get ignored?

[src] [src]

Z Aliasing

↩PREREQUISITES↩

Objects with a contours / holes that curve on the Z-axis (e.g., sphere and donut) experience a type of artifacting called stair-stepping, where as the curve's slope aggressively becomes more and more horizontal, overtly visible steps appear between neighboring layers.

⚠️NOTE️️️⚠️

This is sometimes called Z-axis aliasing?

To mitigate stair-stepping, either ...

  1. reduce the layer height for the entire object.
  2. reduce the layer heights where stair-stepping becomes prevalent, using the variable layer height tool.
  3. set QualityAdvancedOnly one wall on top surfaces to Not Applied to reduce visible layer lines near the top surface. When set to Not Applied, the number of walls on the top surface is the same as the number of wall loops set under StrengthWallsWall loops. Effectively, it's overwriting the parameter Wall loops for the top surface to be a single wall.

Bambu Studio Preview screen Only one wall on top surfaces example

⚠️NOTE️️️⚠️

There seems to also be a hidden developer property QualityAdvancedTop area threshold that sets the threshold for what top surfaces use wall loops's count vs a single surface. I can't find this in my Bambu Studio. See https://wiki.bambulab.com/en/software/bambu-studio/parameter/quality-advance-settings.

[src] [src]

Elephant Foot

↩PREREQUISITES↩

An elephant foot is a phenomenon where the first layer of a print slightly splays out. This happens because the first layer sits on a heated build plate and doesn't appropriately cool, and so either through the non-cooling itself or through the non-cooling along with subsequent layers weighing down on it, causes the first layer to squish and splay.

Bambu website elephant foot example

Elephant foot compensation is an property, located under ProcessQualityElephant foot compensation, that shrinks the first layer. Shrinking the first layer is intended to compensate for the splaying that happens.

Bambu Studio Preview screen elephant foot compensation example

⚠️NOTE️️️⚠️

The elephant foot phenomenon isn't typically a problem unless it's preventing parts from fitting together.

⚠️NOTE️️️⚠️

Elephant foot compensation causes brims to not work properly. They shrink? For it to work properly, compensation must be turned off.

⚠️NOTE️️️⚠️

A raft can guard against the elephant foot problem?

🔍SEE ALSO🔍

[src]

Flow Dynamics

↩PREREQUISITES↩

Flow dynamics calibration compensates for lags in extrusion. These lags are a result of nozzle pressurization: When filament is extruded, it takes time for pressure in the nozzle to build up to a level where plastic flows consistently. When the toolhead ..

Flow dynamics attempts to compensate for the problems above by preemptively adjusting filament flow. This compensation improves print quality, especially when printing complex shapes at higher printing speeds (e.g., cleaner corners and sharper details).

Bambu website good vs poor flow dynamics example

Flow dynamics calibration should be performed whenever ...

While some other Bambu Lab printers have automatic flow dynamics calibration (e.g., H2D), the H2S require manual calibration. The steps for manual flow dynamics calibration are as follows:

  1. Ensure the filament is dry / fresh and the nozzle has no blockages.

    Filaments should always be dry when printing. Damp filaments will render the calibration results unsuitable for use with fresh filament.

  2. Ensure build plate is of correct type and clean.

  3. Navigate to the Calibration page, select Flow Dynamics in the sidebar, and then click the Manual Calibration button at the bottom of the main page. It should switch the page to a Flow Dynamics Calibration page with input fields.

  4. On the Flow Dynamics Calibration page, select the appropriate options and parameters, then click Calibrate. Printing of a test pattern should start once Calibrate is clicked.

  5. Once the test pattern has finished printing, visually inspect and find the number corresponding to the cleanest printed corner.

    There should be numbers running down the right-hand side and 90 degree corners which those numbers correspond to on the left-hand side. Find the number with the cleanest / sharpest corner, where the corner has the least bulging or fraying.

Bambu website flow dynamics print example

  1. On the Flow Dynamics Calibration page, click Next. It should switch to page asking for Factor K. Input the found number from the previous step and click Finish.

[src]

Flow Ratio

↩PREREQUISITES↩

Flow ratio is a scaling factor that adjusts the actual amount of filament extruded vs the theoretical amount calculated by the slicer. The flow ratio helps mitigate problems with over-extrusion and under-extrusion.

Bambu website over under extrusion examples

⚠️NOTE️️️⚠️

From the source:

Different materials have varying melting properties, flowability, and shrinkage rates, so the optimal Flow Ratio required for each material differs. For example:

While some other Bambu Lab printers have automatic flow ratio calibration (e.g., X1), the H2S require manual calibration. The steps for manual flow dynamics calibration are as follows:

⚠️NOTE️️️⚠️

The website recommends to perform flow ratio calibration after dynamic flow calibration, but doesn't dynamic flow calibration depend on the flow ratio? Shouldn't this be the other way around?

  1. Ensure the filament is dry / fresh and the nozzle has no blockages.

    Filaments should always be dry when printing. Damp filaments will render the calibration results unsuitable for use with fresh filament.

  2. Ensure build plate is of correct type and clean.

  3. Navigate to the Calibration page, select Flow Rate in the sidebar, and then click the Manual Calibration button at the bottom of the main page. It should switch the page to a Flow Rate page with input fields.

  4. On the Flow Rate Calibration page, select the appropriate options and parameters, then click Calibrate. Printing of a test pattern should start once Calibrate is clicked.

  5. Once the test pattern has finished printing, visually inspect and find the number corresponding to the smoothest surface.

    There should be numbers on each tab printed. View under side lighting and find the number with the cleanest surface, where there is no bulging or indents.

    Bambu website flow ratio print example

    ⚠️NOTE️️️⚠️

    The pictures above are from the Bambu Lab wiki, and they show that 5 is actually better than 0. That's why they're recommending a side lighting? So the indents / bulges are more visible.

  6. On the Flow Rate Calibration page, click Next. It should switch to page asking for the number with the smoothest top. Input the found number from the previous step and click Calibrate. Printing of a second test pattern should start once Calibrate is clicked.

  7. Once the test pattern has finished printing, visually inspect and find the number corresponding to the smoothest surface.

    There should be numbers on each tab printed. View under side lighting and find the number with the cleanest surface, where there is no bulging or indents.

    Bambu website flow ratio print example 2

  8. On the Flow Rate Calibration page, click Next. It should switch to page asking for the number with the smoothest top. Input the found number from the previous step and click Finish.

[src]

Slicer Diagnostics

↩PREREQUISITES↩

The slicer output shown in the Preview Screen helps identify problems prior to printing.

Bambu Studio Preview screen 3D viewport example

Of the Color schemes available, the following ones help highlight problems:

These color schemes can help diagnose issues before printing:

For more information, see the source.

[src]

Terminology